package com.union.core.sys.dao;

import java.util.List;
import com.union.core.sys.model.SysManager;

/**
 * DAO接口类: 帐号管理
 * filename: SysManagerDao.java
 * project:  CCTR
 * @company Hainan Jowe Technology Ltd
 * @author wangxiuwu
 * @create in 2009-5-21
 * @version 1.0
 */
public interface SysManagerDao {

	/**
	 * 读取登陆帐号列表
	 * @return List<UserBean>
	 */
	public List<SysManager> getManagerList();
	
	/**
	 * 查询某系统帐号详情
	 * @param managerId int
	 * @return SysManager
	 */
	public SysManager getManager(int managerId);
	
	/**
	 * 2 添加登陆帐号
	 * @param managerName String
	 * @param managerPwd String
	 * @param moduleMgrPurview String
	 * @param managerDesc String
	 * @return boolean
	 */
	public boolean addManager(SysManager sysManager);
	
	
	
	/**
	 * 修改登陆帐号
	 * @param userBean UserBean
	 * @return boolean
	 */
	public boolean modifyManager(SysManager sysManager);
	
	/**
	 * 修改登陆帐号状态
	 * @param managerId int
	 * @param state int
	 * @return boolean
	 */
	public boolean modifyManager(int managerId, int state);
	
	/**
	 * 修改登陆帐号相关信息
	 * @param managerId int
	 * @param loginTimes int
	 * @param lastLoginIp String
	 * @return boolean
	 */
	/**
	 * 修改账号密码
	 */
	public boolean modifyuserManager(int MANAGER_ID,String MANAGER_NAME,String MANAGER_PWD);
	
	public boolean modifyManager(int managerId, int loginTimes,String lastLoginIp);
	
	/**
	 * 修改密码
	 * @param MANAGER_ID int
	 * @param MANAGER_NAME String
	 * @param MANAGER_PWD_NEW String
	 * @return boolean
	 */
	public boolean modifyPasswd(int MANAGER_ID, String MANAGER_NAME,String PWD_NEW);
	
	/**
	 * 删除登陆帐号
	 * @param managerId int
	 * @return boolean
	 */
	public boolean deleteManager(int managerId);
	
	/**
	 * 获取操作权限
	 * @param MODULE_MGR_PURVIEW String
	 * @return List<String>
	 */
	public List<String> getModuleMgrPurviewList(String MODULE_MGR_PURVIEW);
	
	
	/**
	 * 校验某帐号是否有某模块登陆权限
	 * @param ManagerName String
	 * @param ManagerPwd String
	 * @param moduleId int
	 * @return boolean
	 */
	public boolean ifHasModuleMgrPurview(String ManagerName, String ManagerPwd,int moduleId);
	
	
	/**
	 * 登陆认证
	 * @param managerName String
	 * @param managerPwd String
	 * @return UserBean
	 */
	public SysManager login(String managerName, String managerPwd);
	/**
	 * 添加后返回生成的ID
	 * 
	 * */
	public int getManagerId(String name);
	/**
	 * 校验登陆用户帐号是否已存在
	 * @param loginName String
	 * @return boolean
	 * false-无记录 true-有记录
	 */
	public boolean checkLoginName(String loginName);
}
